There are two commonly used techniques for exchanging data among applications; 1) publish and subscribe, i.e. a push technique and 2) request and response, i.e. a pull technique.
The publish and subscribe technique assumes that the data producing application (referred to hereinafter as the producer) makes data available for data consumer applications (referred to hereinafter as the consumer). Using this technique, a consumer that knows the format of the data file can subscribe to it. The subscriber application must be preprogrammed to accept the data file it will receive. When the data is transferred using for instance, the extensible markup language (XML), a well-designed schema allows consumers to accept as input XML files that can be somewhat changed but a substantial change in the XML file structure may still require reprogramming the consumer.
The request and response technique assumes that consumers make requests for data and producers respond by sending the requested data in the correct format. Using this technique, the producer of the data has to know the format of the data to be sent when a request is made.
As described above, there are disadvantages associated with each of the techniques used for data exchange. Thus, there is a need in the art for a method of and system for data exchange using a hybrid technique including both publish and subscribe and request and response techniques.